/**
 * 将十六进制颜色代码转换为rgba颜色格式
 *
 * @param hex 十六进制颜色
 * @param opacity 透明度
 */
export function hexToRgb(hex?: string, opacity = 1) {
  if (hex) {
    const str = hex.replace('#', '')
    if (str.length % 3) {
      return 'hex格式不正确！'
    }
    //获取截取的字符长度
    const count = str.length / 3
    //根据字符串的长度判断是否需要 进行幂次方
    const power = 6 / str.length
    const r = parseInt('0x' + str.substring(0 * count, 1 * count)) ** power
    const g = parseInt('0x' + str.substring(1 * count, 2 * count)) ** power
    const b = parseInt('0x' + str.substring(2 * count)) ** power

    return `rgba(${r}, ${g}, ${b}, ${opacity})`
  }

  return ''
}
